PowerTCP Mail for .NET
Receive(Byte[]) Method
See Also  Example Send comments on this topic.
Dart.PowerTCP.Mail Namespace > Tcp Class > Receive Method : Receive(Byte[]) Method




buffer
Destination memory location to store received data.
Receive data from the host.

Syntax

Visual Basic (Declaration) 
<DescriptionAttribute("Receive data into your buffer.")>
Public Overloads Function Receive( _
   ByVal buffer() As Byte _
) As Segment
Visual Basic (Usage)Copy Code
Dim instance As Tcp
Dim buffer() As Byte
Dim value As Segment
 
value = instance.Receive(buffer)
C# 
[DescriptionAttribute("Receive data into your buffer.")]
public Segment Receive( 
   byte[] buffer
)
Managed Extensions for C++ 
[DescriptionAttribute("Receive data into your buffer.")]
public: Segment* Receive( 
   byte[]* buffer
) 
C++/CLI 
[DescriptionAttribute("Receive data into your buffer.")]
public:
Segment^ Receive( 
   array<byte>^ buffer
) 

Parameters

buffer
Destination memory location to store received data.

Return Value

A Segment object encapsulating the data received.

Exceptions

ExceptionDescription
System.IO.IOExceptionThe stream is not Readable.
System.ArgumentNullExceptionbuffer is null.
System.ArgumentOutOfRangeExceptionoffset or count is less than 0.
System.ArgumentExceptionoffset + count is greater than the length of buffer.
System.Net.Sockets.SocketExceptionThe socket is not connected.

Example

The following example demonstrates sending bytes to the server.
Visual BasicCopy Code
Private Sub Test()
   ' Connect to an echo port
   Tcp1.Connect("atropos", 7)

   Dim sendbuffer() As Byte = System.Text.Encoding.Default.GetBytes("abcdefg")

   ' Send some bytes.
   Tcp1.Send(sendbuffer)

   Dim recvbuffer(sendbuffer.Length) As Byte

   ' Server will echo the bytes back. Receive the bytes.
   Tcp1.Receive(recvbuffer)

   ' Close the connection.
   Tcp1.Close()
End Sub
C#Copy Code
private void Test()
{
   // Connect to the echo port
   tcp1.Connect("atropos", 7);

   byte[] sendbuffer = System.Text.Encoding.Default.GetBytes("abcdefg");

   // Send some bytes.
   tcp1.Send(sendbuffer);

   byte[] recvbuffer = new byte[sendbuffer.Length];

   // Server will echo the bytes back. Receive the bytes.
   tcp1.Receive(recvbuffer);

   // Close the connection.
   tcp1.Close();
}

Remarks

After connecting, data can be received using the Tcp.Recieve method. All Tcp.Receive methods return a Segment object, encapsulating the data received. In order to access the data, simply access the properties of the Segment object returned such as Segment.Buffer (to access the data in a byte array) or Segment.ToString (to access the data as a string).

If the amount of data received from the server exceeds Tcp.ReceiveBufferSize, the Tcp.Receive method will have to be called multiple times until the socket closes.

This method is functionally equivalent to Tcp.Stream.Write(byte[]).

Requirements

Target Platforms: Microsoft .NET Framework 2.0

See Also

Documentation Version 3.2
© 2010 Dart Communications. All Rights Reserved.